using System;
using MyReactivity.Abstractions;

namespace Project.Models.Abstractions
{
    public interface IReadOnlyInventory
    {
        IReadOnlyReactiveList<IReadOnlySlot> Slots { get; }

        event Action<int, int> ItemsLost;

        bool Has(int quantityOnItems);
        bool Has(int itemId, int quantityOnItems);
        int GetTotalQuantityOfItems();
        int GetTotalQuantityOfItems(int itemId);
    }
}
